package com.shujia.wyh.day11.ketang;

/*
        继承中重写有哪些注意事项：
            1、父类中私有的方法不能被重写
            2、如果子类要重写父类中的方法，访问权限必须要大于等于父类中的权限
                不能被父类中的访问权限还要低。
                要么比它大，要么跟它一样。
                建议：以后重写方法的时候，访问权限与父类中的访问权限一致。
            3、父类中的静态方法，子类不允许重写，因为静态的东西是属于类本身的东西，相当于各用各的，与重写八竿子打不着。
 */

class OldPhone2{
    public void call(String name){
        System.out.println("打电话给"+name);
    }

    public static void game(){
        System.out.println("贪吃蛇游戏");
    }

}

class NewPhone3 extends OldPhone2{
    @Override
    public void call(String name) {
//        game();

        System.out.println("重写父类中的call方法");
    }
    //正在尝试分配更低的访问权限; 以前为public
//    @Override
//    void game(){
//        System.out.println("贪吃蛇2.0");
//    }

//    @Override
//    public void game(){
//        System.out.println("贪吃蛇2.0");
//    }

//    @Override
//    public static void game(){
//        System.out.println("贪吃蛇2.0");
//    }
}

public class ExtendsDemo11 {
    public static void main(String[] args) {
        NewPhone3 newPhone3 = new NewPhone3();
        newPhone3.call("李毅");
        newPhone3.game();
    }
}
